AI 與新進工程師 · 系統完整交接文件與故障防護 SOP
📌 v10.2 FINAL · 2026-10-06 · BBS 討論區上線

1. 🦞 系統人格與核心設定

身份定位:

🖥️ 雙機架構(v10.2 更新)

機器電腦名稱類型定位Pythonopenai
聯想AHPAL-LENOVOLenovo IdeaPad 83K1主力機(工作室)3.12.143.14.1
戴爾DESKTOP-AKLAM99Dell Latitude 5320外出機(移動使用)3.14.62.45.0
⚠️ 戴爾 Latitude 5320 特殊注意:

支援 S0 現代待機(Modern Standby),無法真正關機。強制關機需按電源鍵 10 秒,或使用 shutdown /s /f /t 0。建議改用「休眠」(shutdown /h)。

2. 📊 系統狀態總覽(v10.2 · 2026-10-06)

📰 主站(ahpal-static)

7,877+
總文章數
12
分類
795
生活小常識
684+
人生哲理
16,339+
總檔案數
1,032+ MB
總大小

📚 小說站(ahpal-novels)

20
部小說
3,300
章節
4,721
Hugo 總頁數
24.963 GB
聯想鏡像大小

📚 UCHome 紀念館(ahpal-memories)

3,712
位會員
31,635
篇日誌
6,564
本相簿
4,350
原有產出檔案

🆕 BBS 討論區(v10.2 新增)

12
版塊
7,033
篇主題
8,802
篇帖子
7,046
Hugo 頁面
11,409
紀念館總檔案數
8,591
Cloudflare 剩餘空間
🎯 BBS 討論區上線:

網址:memories.ahpal.com/bbs/|來源:ahpalbbs.sql(963 MB,Discuz! 7.0)|主題:7,033 篇|帖子:8,802 篇|部署:Cloudflare Workers(免費方案 < 20,000)

🌐 網域與 DNS

項目值
主網域ahpal.com
註冊商✅ Cloudflare, Inc.
到期日2029-04-07
DNS 代管clayton.ns.cloudflare.com / princess.ns.cloudflare.com
DNSSEC✅ 已啟用
SSL/TLS✅ Full (Strict)
HSTS✅ 1 年 + preload
主站ahpal.com / www.ahpal.com → Cloudflare Pages
小說站novels.ahpal.com → Cloudflare Workers
紀念館memories.ahpal.com → Cloudflare Workers

3. 🏗️ 五大 Repository 與部署架構

📦 五大 Repository

Repository權限 / 路徑內容與權責
praystone/ahpal-websitePublic
C:\Users\User\ahpal-static
主站:Python AI Agent、PowerShell 腳本、HTML、文章資料庫
praystone/AHPAL-SystemToolsPublic
C:\Users\User\ahpal-AI-archive\system-tools
系統工具(雙機同步)
praystone/AHPAL-SyncPublic
C:\Users\User\Desktop\AHPAL-Sync
企劃專案倉庫
praystone/ahpal-novelsPublic
C:\Projects\ahpal_backup\...\mysql\hugo_site
小說站:Hugo 專案、20 部小說、3,300 章節
praystone/ahpal-memoriesPublic
C:\Projects\ahpal_backup\...\mysql\uchome_site
UCHome 紀念館 + BBS:Hugo 專案、3,712 會員、31,635 日誌、7,033 BBS 主題

🚨 部署架構(唯一正門)

# 主站 Git push → GitHub main → Cloudflare Pages 自動部署 → www.ahpal.com # 小說站 Git push → GitHub main → Cloudflare Workers 自動部署 → novels.ahpal.com # UCHome 紀念館(含 BBS) Git push → GitHub main → Cloudflare Workers 自動部署 → memories.ahpal.com
絕對禁止: npx wrangler pages deploy .

4. 🔴 12 條董事長死命令

#死命令檢查方式
1文章變更後強制檢查.\scripts\preflight-check.ps1
2文章檔名強制使用英文自動強制轉換
3CSS 靜態資產保護main.css 禁止自動覆蓋
4文章清單集中管理master-articles.json
5設定 UTF-8 編碼.ps1 UTF-8 有 BOM、.json UTF-8 無 BOM
6首頁完整性create_default_index()
7禁止擅自精簡或改寫既有功能修復前備份、修復後對比
8不准用 PowerShell 7 才有的語法PowerShell 5.1 相容
9盡量用 PowerShell 直接修改腳本!一鍵完成多種任務!因為人類沒你們那麼多線程
10永遠使用 SYSTEM 帳戶排程LogonType: ServiceAccount
11SEO 四大件無 noindex.\scripts\seo-dashboard.ps1
12Production 部署唯一正門禁止 npx wrangler pages deploy .

5. ⭐ 三大核心原則與防錯守則

  1. 永遠不依賴 main.py 的判斷邏輯 — 直接呼叫 article_generator.generate_article()
  2. 永遠使用 SYSTEM 帳戶排程 — LogonType: ServiceAccount
  3. 永遠先掃描目錄與檔案備份 — 確認缺失數量後再執行生成

🆕 防錯守則(v10.2 完整版)

  • JSONDecodeError 炸裂: 立即回滾 master-articles.json
  • API Key 失效或超額: 檢查 .env
  • 排程未自動觸發: 檢查 Task 是否為 SYSTEM 權限
  • CSS 白底白字: 檢查 style/main.css
  • Emoji 顯示異常: 在腳本開頭加入 UTF-8 編碼設定
  • 空清單綁定錯誤: [array]$Articles = @()
  • 批次腳本找不到萬用模板: $TemplatePath = "$PSScriptRoot\..\lib\auto-batch-template.ps1"
  • Git Pull 衝突: 使用 .\git-manager.ps1 選 [P]
  • UTF-8 無 BOM: .json 用 System.Text.UTF8Encoding $false
  • PowerShell 5.1 相容性: #Requires -Version 5.1
  • 🚨 .env 部署防護: 不要用 wrangler pages deploy
  • 🚨 Cloudflare WAF: 確認「Block .env access」已啟用
  • Hugo 模板分離: layouts/index.html 與 layouts/_default/list.html 必須不同
  • .gitignore 補強: 加入 novels.bak-*/、旗袍/、backups/
  • 小說無標題 fallback: convert_to_hugo.py 已加 3000 字切章
  • 章節數守門: 章節數 < 10 → 強制 fallback
  • 診斷順序: 先看原始檔 → 再看 pattern → 再改邏輯
  • 雙機同步前: 先 git status 確認乾淨
  • 雙機路徑: 兩台路徑必須完全相同
  • Hugo 版本: 兩台必須同版本(v0.166.0 extended)
  • SMB 轉移後: 關閉共享,避免安全風險
  • .git 複製: 用 Robocopy,不用 git clone .
  • Python 套件安裝: 用絕對路徑 & "python.exe" -m pip install
  • 批次生成前: 確認 API Key 檢查通過
  • Responses API 失敗: 自動降級至 Chat API
  • 配圖 HTTP 500: Pollinations AI 重試 3 次
  • 網域轉移後: 確認 Cloudflare Registrar 狀態為 Active,並開啟 DNSSEC
  • Enom 遺留設定: Host Records 和 Email Settings 已不生效,可忽略
  • SSL/TLS 設定: 使用 Full (Strict),並開啟 HSTS + Always Use HTTPS
  • Redirect Rule: 裸域 301 到 www,排除 novels 子網域
  • watch-pipeline.ps1: 健康狀態只依「失敗數」判斷
  • 圖片進 Git: 網站圖片必須進 Git
  • backups/ 排除: .gitignore 加入 backups/
  • Wrapper 必須完整: 包含呼叫模板的邏輯
  • Wrapper 必須有 Read-Host: 右鍵執行才不會秒關
  • 先診斷再給腳本: 不確定就先問清楚
  • 分類要確認: life 和 philosophy 不要搞混
  • 模板路徑: $PSScriptRoot\..\lib\auto-batch-template.ps1
  • 雙機同步 SOP: 見第 9.5 章
  • 雙機同步 LOG: 自動寫入 sync-logs/,自動 push
  • 雙機同步排除清單: .sql、.git、public、resources、備份目錄
  • 雙機同步等待邏輯: 必須「曾經有過連線」才計算「無連線」
  • 🆕 BBS 提取 SOP: 見第 13 章
  • 🆕 BBS front matter: tid、fid、author、subject、dateline 欄位順序見第 13 章
  • 🆕 BBS list.html: 用 eq .Parent.Section "" 區分頂層/子版塊
  • 🆕 BBS 日期: 用 (time .Params.dateline).Format,不用 .Date

6. 📂 重要檔案與路徑

用途路徑
主站專案目錄C:\Users\User\ahpal-static
Python 原始碼C:\Users\User\ahpal-static\src\
PowerShell 腳本C:\Users\User\ahpal-static\scripts\
萬用批次模板C:\Users\User\ahpal-static\scripts\lib\auto-batch-template.ps1
批次腳本C:\Users\User\ahpal-static\scripts\auto-batch\
全站文章 Master JSONC:\Users\User\ahpal-static\data\master-articles.json
環境變數 (.env)C:\Users\User\ahpal-env\.env(絕不進 Git)
小說站 Hugo 專案C:\Projects\ahpal_backup\...\mysql\hugo_site
紀念館 Hugo 專案C:\Projects\ahpal_backup\...\mysql\uchome_site
BBS 帖子切檔C:\Projects\ahpal_backup\...\mysql\posts_by_fid\
BBS 帖子 JSONC:\Projects\ahpal_backup\...\mysql\posts_json\
系統工具C:\Users\User\ahpal-AI-archive\system-tools\
雙機同步 LOGC:\Users\User\ahpal-AI-archive\system-tools\sync-logs\
網域註冊商後台https://dash.cloudflare.com/ → Domain Registration

7. ⚡ 快速指令(v10.2 更新)

用途指令
完整部署 / 主控台.\scripts\ahpal-master.ps1 → [1]
死命令預檢.\scripts\preflight-check.ps1
黃金備份.\scripts\backup-system.ps1 -Golden
Git 管理工具.\git-manager.ps1 v3.7
SEO 總控制台.\scripts\seo-dashboard.ps1
產線健康監控.\scripts\watch-pipeline.ps1 v3.1
批次生成(生活小常識).\scripts\auto-batch\auto-life-batch.ps1
批次生成(人生哲理).\scripts\auto-batch\auto-philosophy-batch.ps1
批次生成(預覽).\scripts\auto-batch\auto-trend-batch.ps1 -DryRun
Hugo 編譯(紀念館)cd uchome_site; hugo --minify
Hugo 版本確認hugo version
測試 GitHub SSHssh -T [email protected]
檢查 Git 狀態git status / git remote -v / git log --oneline -3
雙機同步(聯想端).\Start-SmbSync-Server.ps1 -WaitForClient
雙機同步(戴爾端).\Start-SmbSync-Client.ps1 -ServerIP "10.33.94.198"
🆕 BBS 提取(切檔)python split_posts_by_fid.py
🆕 BBS 轉 JSONpython convert_all_fids.py
🆕 BBS 建站python build_bbs_all.py

9. 🆕 UCHome 紀念館 + BBS 架構(v10.2 更新)

🎯 紀念館原有

項目值
專案路徑C:\Projects\ahpal_backup\...\mysql\uchome_site
GitHub Repopraystone/ahpal-memories
部署平台Cloudflare Workers(Static Assets)
自訂網域memories.ahpal.com
Hugo 版本0.166.0 extended
會員數3,712 位
日誌數31,635 篇
原有產出檔案4,350 個

🆕 BBS 討論區(v10.2 新增)

項目值
資料來源ahpalbbs.sql(963 MB,Discuz! 7.0)
主題數7,033 篇
帖子數8,802 篇
版塊數12 個
BBS 首頁memories.ahpal.com/bbs/
Hugo 主題頁content/bbs/{slug}/thread-{tid}.md
帖子 JSONstatic/data/posts-fid{XX}.json
動態載入static/js/bbs-loader.js

📊 12 個版塊明細

fid版塊slug主題數
2站務公告announcement5
3建議申訴complaint32
6辯論投票debate3
32兩性教育gender-education14
34茗茶喝茶飲茶tea11
50星座專家constellation365
51命理風水卜卦fortune193
52心理測驗psychology345
59食譜烹飪recipe5,305
68兩性園地relationship113
72生活常識life-tips446
74咖啡花茶coffee-tea201
總計7,033
📌 Cloudflare 檔案數: 11,409 < 20,000(安全)|剩餘空間:8,591

13. 🆕 BBS 提取 SOP(v10.2 新增)

🎯 目標

從 Discuz! 7.0 的 ahpalbbs.sql(963 MB),提取「與 UCHome 相關」的 12 個版塊,整合進 memories.ahpal.com。

📦 資料表結構(Discuz! 7.0)

表名用途筆數
cdb_forums版塊189
cdb_threads主題31,544
cdb_posts帖子143,599

🔑 關鍵欄位順序(重要!)

cdb_threads: [0]=tid, [1]=fid, [7]=author, [9]=subject, [10]=dateline
cdb_posts: [0]=pid, [1]=fid, [2]=tid

🔄 提取流程(三階段)

階段腳本產出
1. 提取核心表extract_bbs_core.pybbs_data_extracted/
2. 切檔split_posts_by_fid.pyposts_by_fid/posts_fidXX.sql
3. 轉 JSONconvert_all_fids.pyposts_json/fidXX.json
4. 建站build_bbs_all.pycontent/bbs/{slug}/*.md
5. 編譯hugo --minifypublic/bbs/
6. 部署git pushmemories.ahpal.com/bbs/

📐 Hugo 模板架構

layouts/bbs/ ├── list.html ← 用 eq .Parent.Section "" 區分頂層/子版塊 └── single.html ← 用 (time .Params.dateline).Format 顯示日期 static/js/ └── bbs-loader.js ← fetch JSON + 篩選 tid + 渲染

⚠️ 踩過的坑

12. ✅ 近期事件與修復記錄(v10.2 更新)

日期事件狀態
2026-09-26分類名稱統一✅ 完成
2026-09-28DNSSEC 已啟用✅ 完成
2026-09-30SSL/TLS 升級 Full (Strict)✅ 完成
2026-10-01生活小常識第一批 100 篇✅ 完成
2026-10-02生活小常識第二、三批 100 篇✅ 完成
2026-10-03人生哲理 +100 篇✅ 完成
2026-10-04UCHome 紀念館上線✅ 完成
2026-10-05Google Search Console 驗證成功✅ 完成
2026-10-05雙機同步 SOP 上線(SMB + Robocopy)✅ 完成
2026-10-05雙機同步 LOG 自動 push 到 GitHub✅ 完成
2026-10-05雙機同步交接文件產生器上線✅ 完成
2026-10-05Git 管理工具 v3.7(5 倉庫)✅ 完成
2026-10-05SEO 總控制台檢查(錯誤 0、警告 0)✅ 完成
2026-10-05系統報告結構化(YYYY-MM 子目錄)✅ 完成
2026-10-05config.ps1 頂層 param bug 修復✅ 完成
2026-10-06🆕 BBS 提取(12 版塊,7,033 主題)✅ 完成
2026-10-06🆕 BBS 帖子轉 JSON(8,802 篇)✅ 完成
2026-10-06🆕 BBS Hugo 頁面(7,046 個)✅ 完成
2026-10-06🆕 BBS 動態載入上線✅ 完成
2026-10-06🆕 BBS front matter 修正✅ 完成
2026-10-06🆕 紀念館首頁加入 BBS 專區✅ 完成

11. 📋 新進工程師 CheckList(v10.2 FINAL)

  • ☐ 確認 GitHub 主儲存庫:praystone/ahpal-website
  • ☐ 確認小說站儲存庫:praystone/ahpal-novels
  • ☐ 確認紀念館儲存庫:praystone/ahpal-memories
  • ☐ 確認 C:\Users\User\ahpal-env\.env 已建立(絕不上傳 Git)
  • ☐ 確認 Cloudflare Pages / Workers 綁定與自動部署
  • ☐ 測試執行 .\scripts\ahpal-master.ps1
  • ☐ 了解 Pollinations AI 配圖機制
  • ☐ 了解 SYSTEM 帳戶排程設定
  • ☐ 已閱讀 12 條死命令
  • ☐ 確認 style/main.css 手動維護
  • ☐ 確認三個設定檔模型名稱一致
  • ☐ 了解 Git 管理工具 v3.7
  • ☐ 了解「萬用批次模板 + Thin Wrapper」架構
  • ☐ 設定 Telegram Bot 通知
  • ☐ 了解 SEO 四大件無 noindex
  • ☐ 確認所有 .ps1 為 #Requires -Version 5.1 + UTF-8 有 BOM
  • ☐ 確認 .env 已移出專案目錄
  • ☐ 確認 Cloudflare WAF 規則已啟用
  • ☐ 了解小說站 Hugo 架構與 novels.ahpal.com 部署流程
  • ☐ 了解紀念館 Hugo 架構與 memories.ahpal.com 部署流程
  • ☐ 了解 BBS 討論區架構與 memories.ahpal.com/bbs/
  • ☐ 確認聯想為主力機,戴爾為外出機
  • ☐ 確認兩台機器 Hugo 版本一致(v0.166.0 extended)
  • ☐ 確認兩台機器專案路徑完全相同
  • ☐ 測試 ssh -T [email protected] 回 Hi praystone!
  • ☐ 確認 novels.ahpal.com 線上回 200
  • ☐ 確認 memories.ahpal.com 線上回 200
  • ☐ 確認 memories.ahpal.com/bbs/ 線上回 200
  • ☐ 確認 Python 套件已安裝:requests / openai / google-genai / python-dotenv
  • ☐ 了解 Responses API 與 Chat API 的 fallback 機制
  • ☐ 確認 ahpal.com 註冊商為 Cloudflare
  • ☐ 確認 ahpal.com 到期日為 2029-04-07
  • ☐ 確認 DNSSEC 已啟用
  • ☐ 確認 SSL/TLS 為 Full (Strict)
  • ☐ 確認 HSTS 已啟用(1 年 + preload)
  • ☐ 確認 Always Use HTTPS 已啟用
  • ☐ 確認 Redirect Rule 已建立(裸域 → www)
  • ☐ 🆕 確認總文章數 7,877+ 篇
  • ☐ 🆕 確認 BBS 主題 7,033 篇
  • ☐ 🆕 確認 BBS 帖子 8,802 篇
  • ☐ 🆕 確認 12 個版塊全部可訪問
  • ☐ 🆕 確認 Cloudflare 檔案數 11,409 < 20,000
  • ☐ 🆕 確認首頁有「BBS 討論區」區塊